package leetcode_周赛._2021._202105._20210509;

import java.util.HashMap;
import java.util.Map;

/**
 * @author yzh
 * @version 1.0
 * @date 2021/5/9 10:33
 * 人口最多的年份
 * 使用哈希表记录每个年份人口的数量
 * log[i] 表示一个人的存活时间
 */
public class _5750 {

    public int maximumPopulation(int[][] logs) {
        Map<Integer, Integer> map = new HashMap<>();
        for (int i = 0; i < logs.length; i++) {
            for (int j = logs[i][0]; j < logs[i][1]; j++) {
                map.put(j, map.getOrDefault(j, 0) + 1);
            }
        }
        int ans = Integer.MAX_VALUE, max = Integer.MIN_VALUE;
        for (Map.Entry<Integer, Integer> entry : map.entrySet()) {
            if (entry.getValue() > max) {
                max = entry.getValue();
                ans = entry.getKey();
            } else if (entry.getValue() == max && entry.getKey() < ans) ans = entry.getKey();
        }
        return ans;
    }
}
